package com.gzz.orchid.context.domain.inventory.entity;

import com.gzz.orchid.common.core.tuple.Money;
import com.gzz.orchid.common.core.tuple.OrderNo;
import com.gzz.orchid.context.infrastructure.definition.Status;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.Set;

/**
 * 退货单 ReturnNote
 * 英文全称: Purchase Return Note / Return to Vendor
 * 常用缩写: RTV (Return to Vendor)
 * 解释: 当收到的货物有质量问题或与订单不符时，向供应商退回货物所开具的单据。
 *
 * @author higmd
 */
@Data
public class ReturnDo {
    /**
     * 单据编号
     */
    private OrderNo no;
    /**
     * 外部单据编号（采购单）
     */
    private String extNo;
    /**
     * 单据时间
     */
    private LocalDateTime timeAt;
    /**
     * 处理人
     */
    private String handler;
    /**
     * 金额
     */
    private Money amount;
    /**
     * 备注
     */
    private String memo;
    /**
     * 状态
     */
    private Status status;
    /**
     * 订单明细
     */
    private Set<OrderDetail> items;
}
